/*
 *    Copyright (c) 2018-2025, cloud All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the pig4cloud.com developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 * Author: cloud
 */

package com.fuyao.cloud.asset.workItem.entity;


import com.baomidou.mybatisplus.annotation.SqlCondition;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fuyao.cloud.common.biz.entity.AuditableEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 工作事项表
 *
 * @author lyhills
 * @date 2023-09-11 12:02:57
 */
@Data
@TableName("fy_work_item")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "工作事项表")
public class WorkItem extends AuditableEntity {

    private static final long serialVersionUID = 1L;
    /**
     * 未办理
     */
    public static final String DRAFT = "0";
    /**
     * 已办理
     */
    public static final String FINISH = "1";
    /**
     * 默认紧急程度
     */
    public static final String LOW = "低";

    /**
     * 分配人ID
     */
    private Long assignedId;
    /**
     * 分配人名称
     */
    @TableField(condition = SqlCondition.EQUAL)
    private String assignedName;
    /**
     * 分配人部门ID
     */
    private String assignedDeptId;
    /**
     * 分配人部门全名称
     */
    private String assignedDeptFullName;

    /**
     * 状态： 0：未办理，1：已办理
     */
    @TableField(condition = SqlCondition.EQUAL)
    @ApiModelProperty(value="状态： 0：未办理，1：已办理")
    private String status;

    /**
     * 业务表单ID
     */
    @TableField(condition = SqlCondition.EQUAL)
    @ApiModelProperty(value="业务表单ID")
    private Long formId;

    /**
     * 事项名称
     */
    @TableField(condition = SqlCondition.LIKE)
    @ApiModelProperty(value="事项名称")
    private String subject;

    /**
     * 事项说明
     */
    @TableField(condition = SqlCondition.LIKE)
    @ApiModelProperty(value="事项说明")
    private String description;

    /**
     * 排序
     */
    @ApiModelProperty(value="排序")
    private Integer orderNo;

    /**
     * 紧急程度
     */
    @TableField(condition = SqlCondition.EQUAL)
    @ApiModelProperty(value="紧急程度")
    private String level;

    /**
     * 提醒类型
     */
    @ApiModelProperty(value="提醒类型")
    private String reminderType;

    /**
     * 父级ID
     */
    @ApiModelProperty(value="父级ID")
    private Long parentId;

}
